<?php

/**
 * BP-MEDIA UNIT TESTS - TEST CONFIGURATION AND SELECTION
 *
 * Ensures scripts are run in a specific order, and allows scripts to be easily enabled and
 * disabled without having to move them between directories (which would cause huge SVN problems
 * if developers were editing and moving around scripts at the same time).
 *
 * @version 0.1.9
 * @since 0.1.9
 * @package BP-Media
 * @subpackage Unit Test
 * @license GPL v2.0
 * @link http://code.google.com/p/buddypress-media/
 *
 * ========================================================================================================
 */


class BP_testPlan extends RAZ_testPlan_base {


	public function __construct() {

		self::setTestPanels();
		self::setTestCases();	    
	}
	
	
	/**
         * Loads mock classes used by the unit test runners in this dictionary
         *
         * @version 0.1.9
         * @since 0.1.9
         */ 
    
	public function loadMockClasses() {
		
		//require_once(dirname( __FILE__ ) . '/mock_classes/mock_class.page.module.manager.php');

	}
	
	
	/**
         * Fetches the requested database images and loads their remapper classes
         *
         * @version 0.1.9
         * @since 0.1.9
         */

	public function setTestPanels() {
	    
	    
		$this->panels = array(

			"A" => array(
					"enable"=>true,  
					"name"=>"WP 3.4.1 in SINGLE SITE mode", 
					"file"=>"/panels/panel_wp.3.4.1-single.php"					    						
			),
			"B" => array(
					"enable"=>true,  
					"name"=>"WP 3.4.1 in MULTISITE mode", 
					"file"=>"/panels/panel_wp.3.4.1-multi.php"					    						
			),
			"C" => array(
					"enable"=>true,  
					"name"=>"WP 3.4.1 in in SINGLE SITE mode with bbPress 2.1.2", 
					"file"=>"/panels/panel_wp.3.4.1-single-bbpress.2.1.2.php"					    						
			)		    

		);		
		
	}	
		
	
	/**
         * Loads requested test cases so the test core can run them
         *
         * @version 0.1.9
         * @since 0.1.9
         */

	public function setTestCases() {


		$this->cases = array(

			"activity" => array(
						array( "enable"=>false,  "name"=>"Typecasters", "mock"=>array(), "file"=>"/tests/core/test_class.typecast.php" ),
			),

			"blogs" => array(
						array( "enable"=>false,  "name"=>"Event Logger", "mock"=>array(), "file"=>"/tests/system/test_system.logging.event.php" ),
			),

			"core" => array(
						array( "enable"=>false,  "name"=>"System Stats", "mock"=>array(), "file"=>"/tests/stats/test_class.stats.php" ),
			),

			"forums" => array(
						array( "enable"=>false,  "name"=>"Query Builders", "mock"=>array(), "file"=>"/tests/database/test_db_builders.php" )
			),

			"friends" => array(
						array( "enable"=>false,  "name"=>"APC Cache", "mock"=>array(), "file"=>"/tests/cache_apc/test_system.cache.php" ),
			),
		    
			"groups" => array(
						array( "enable"=>false,  "name"=>"Disk Cache", "mock"=>array(), "file"=>"/tests/cache_disk/test_disk.cache.php" ),
			),

			"languages" => array(
						array( "enable"=>false,  "name"=>"Module Manager", "mock"=>array(), "file"=>"/tests/base/test_abstract.module.manager.php" )
			),

			"members" => array(
						array( "enable"=>false,  "name"=>"System Config", "mock"=>array(), "file"=>"/tests/store/test_config.system.php" ),
			),

			"messages" => array(
						array( "enable"=>false,  "name"=>"AlbumType Data", "mock"=>array(), "file"=>"/tests/album/test_album.type.data.php" )
			),

			"settings" => array(
						array( "enable"=>false,  "name"=>"Media Object", "mock"=>array(), "file"=>"/tests/media/test_class.media.object.php" )
			),

			"themes" => array(
						array( "enable"=>false,  "name"=>"Location Modules", "mock"=>array(), "file"=>"/tests/nav/test_class.location.module.php" )
			),

			"xprofile" => array(
						array( "enable"=>false,  "name"=>"Member Tags", "mock"=>array(), "file"=>"/tests/meta/test_class.member.tags.php" )
			),
		    
			"navigation" => array(
						array( "enable"=>true,  "name"=>"Router", "mock"=>array(), "file"=>"/tests/navigation/test_class.router.php" )
			)		    

		);

	}

}

$cls = new BP_testPlan();

global $razor;
$razor->registerTestPlan($cls);

?>